package com.fulihui.usercore.request.auth;

/**
 * 账号注册登陆请求
 *
 * @author Willard.Hu on 2016/11/3 0003.
 */
public class AccountAuthRequest extends AbstractAuthRequest {
    private static final long serialVersionUID = 5365787653605274818L;
    /**
     * 账户密码
     */
    private String password;
    /**
     * 验证码值
     */
    private String vcode;

    /**
     * 验证码命名空间
     */
    private String vcodeNamespace;
    //// FIXME: 2017/6/13 以下属性为H5专用
    /**
     * 微信号用户唯一标识
     */
    private String openid;
    /**
     * 微信平台类型
     *
     * @see com.fulihui.usercore.enums.WechatOpenIdTypeEnum
     */
    private String openidType;
    /**
     * 微信平台标识
     */
    private String appid;
    /**
     * 同一平台用户唯一标识
     */
    private String unionid;
    /**
     * 微信昵称
     */
    private String nickname;
    /**
     * 微信头像
     */
    private String headImg;
    /**
     * 是否关注
     */
    private int    subscribe;
    /**
     * 关注时间
     */
    private long   subscribeTime;
    /**
     * 性别
     */
    private int    sex;

    public String getPassword() {
        return password;
    }

    public void setPassword(String password) {
        this.password = password;
    }

    /**
     * Getter method for property <tt>vcode</tt>
     *
     * @return property value of vcode
     */
    public String getVcode() {
        return vcode;
    }

    /**
     * Setter method for property <tt>vcode</tt>.
     *
     * @param vcode value to be assigned to property vcode
     */
    public void setVcode(String vcode) {
        this.vcode = vcode;
    }

    /**
     * Getter method for property <tt>vcodeNamespace</tt>
     *
     * @return property value of vcodeNamespace
     */
    public String getVcodeNamespace() {
        return vcodeNamespace;
    }

    /**
     * Setter method for property <tt>vcodeNamespace</tt>.
     *
     * @param vcodeNamespace value to be assigned to property vcodeNamespace
     */
    public void setVcodeNamespace(String vcodeNamespace) {
        this.vcodeNamespace = vcodeNamespace;
    }

    /**
     * Getter method for property <tt>openid</tt>
     *
     * @return property value of openid
     */
    public String getOpenid() {
        return openid;
    }

    /**
     * Setter method for property <tt>openid</tt>.
     *
     * @param openid value to be assigned to property openid
     */
    public void setOpenid(String openid) {
        this.openid = openid;
    }

    /**
     * Getter method for property <tt>openidType</tt>
     *
     * @return property value of openidType
     */
    public String getOpenidType() {
        return openidType;
    }

    /**
     * Setter method for property <tt>openidType</tt>.
     *
     * @param openidType value to be assigned to property openidType
     */
    public void setOpenidType(String openidType) {
        this.openidType = openidType;
    }

    /**
     * Getter method for property <tt>appid</tt>
     *
     * @return property value of appid
     */
    public String getAppid() {
        return appid;
    }

    /**
     * Setter method for property <tt>appid</tt>.
     *
     * @param appid value to be assigned to property appid
     */
    public void setAppid(String appid) {
        this.appid = appid;
    }

    /**
     * Getter method for property <tt>unionid</tt>
     *
     * @return property value of unionid
     */
    public String getUnionid() {
        return unionid;
    }

    /**
     * Setter method for property <tt>unionid</tt>.
     *
     * @param unionid value to be assigned to property unionid
     */
    public void setUnionid(String unionid) {
        this.unionid = unionid;
    }

    /**
     * Getter method for property <tt>nickname</tt>
     *
     * @return property value of nickname
     */
    public String getNickname() {
        return nickname;
    }

    /**
     * Setter method for property <tt>nickname</tt>.
     *
     * @param nickname value to be assigned to property nickname
     */
    public void setNickname(String nickname) {
        this.nickname = nickname;
    }

    /**
     * Getter method for property <tt>headImg</tt>
     *
     * @return property value of headImg
     */
    public String getHeadImg() {
        return headImg;
    }

    /**
     * Setter method for property <tt>headImg</tt>.
     *
     * @param headImg value to be assigned to property headImg
     */
    public void setHeadImg(String headImg) {
        this.headImg = headImg;
    }

    /**
     * Getter method for property <tt>subscribe</tt>
     *
     * @return property value of subscribe
     */
    public int getSubscribe() {
        return subscribe;
    }

    /**
     * Setter method for property <tt>subscribe</tt>.
     *
     * @param subscribe value to be assigned to property subscribe
     */
    public void setSubscribe(int subscribe) {
        this.subscribe = subscribe;
    }

    /**
     * Getter method for property <tt>subscribeTime</tt>
     *
     * @return property value of subscribeTime
     */
    public long getSubscribeTime() {
        return subscribeTime;
    }

    /**
     * Setter method for property <tt>subscribeTime</tt>.
     *
     * @param subscribeTime value to be assigned to property subscribeTime
     */
    public void setSubscribeTime(long subscribeTime) {
        this.subscribeTime = subscribeTime;
    }

    /**
     * Getter method for property <tt>sex</tt>
     *
     * @return property value of sex
     */
    public int getSex() {
        return sex;
    }

    /**
     * Setter method for property <tt>sex</tt>.
     *
     * @param sex value to be assigned to property sex
     */
    public void setSex(int sex) {
        this.sex = sex;
    }
}
